package com.healthcloud.service.questionnaire;

import com.healthcloud.entity.questionnaire.*;
import com.healthcloud.utils.PageParam;

import java.util.List;

/**
 * 问卷
 * @author zhangjie
 */
public interface QuestionnaireService {

    List<QuestionnaireTitleEntity> queryListTitle(QuestionnaireTitleEntity entity, PageParam pageParam);

    List<QuestionnaireSubtitleEntity> queryListSubtitle(QuestionnaireSubtitleEntity subtitle, PageParam pageParam);

    List<QuestionnaireQuestionEntity> queryListQuestion(QuestionnaireQuestionEntity question, PageParam pageParam);

    /**
     * 查询问题(包含选项)
     * @param question
     * @param pageParam
     * @return
     */
    List<QuestionnaireQuestionVo> queryListQuestionVo(QuestionnaireQuestionEntity question, PageParam pageParam);

    List<QuestionnaireRecordVo> queryListRecordVo(QuestionnaireRecordVo recordVo, PageParam pageParam);

    int queryTotalRecordVo(QuestionnaireRecordVo recordVo);

    void add(QuestionnaireRecordVo recordVo);

    List<QuestionnaireResultEntity> queryListResult(QuestionnaireResultVo resultVo, PageParam pageParam);

    List<QuestionnaireOptionEntity> queryListOption(QuestionnaireOptionEntity option, PageParam pageParam);

    void saveTitle(QuestionnaireTitleEntity title);

    void saveSubtitle(QuestionnaireSubtitleEntity subtitle);

    void saveQuestion(QuestionnaireQuestionEntity question);

    void saveOption(QuestionnaireOptionEntity option);
}
